package com.ruoyi.device.domain;

import com.alibaba.fastjson2.annotation.JSONField;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

import com.ruoyi.common.core.domain.entity.SysUser;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.util.Date;

/**
 * App用户注册实体类
 * @auth
 * @date
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class DeviceUserRegister extends BaseEntity {
    private static final long serialVersionUID = 1L;
    /**
     * 主键
     */
    private Long regId;
    /**
     * 所属部门Id
     */
    private Long regDeptId;
    /**
     * 所属部门
     */
    @Excel(name = "所属部门")
    private String regDept;
    /**
     * 工号/学号
     */
    @Excel(name = "工号/学号")
    private String regCode;
    /**
     * 姓名
     */
    @Excel(name = "姓名")
    private String regName;
    /**
     * 手机
     */
    @Excel(name = "手机")
    private String regMobile;

    @JSONField(serialize = false)
    private String regPassword;
    /**
     * 微信openid
     */
    @JSONField(serialize = false)
    private String regOpenid;
    /**
     * 注册状态
     */
    @Excel(name = "注册状态", readConverterExp = "0=待审核， 1=审核通过，2=审核不通过")
    private Integer regStatus;
    /**
     * 审核不通过的说明
     */
    @Excel(name = "审核不通过的说明")
    private String regRemark;
    /**
     * 注册时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "注册时间", dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;
    /**
     * 审核人对象
     */
    @Excel(name = "审核人", targetAttr = "nickName", type = Excel.Type.EXPORT)
    private SysUser user;
    /**
     * 审核时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "审核时间", dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date updateTime;
}
